/********************************************************************
 * PROJECT: FOLIAGE PROJECT.
 * SUPPLIER: FOLIAGE TEAM.
 ********************************************************************
 * FILE: Converter.java
 * (C) Copyright Foliage Team 2013, All Rights Reserved.
 ********************************************************************/
package org.foliage.app.actor.converter;

/**
 * 实例变流器接口，用于将不同结构的实例进行相互转换。
 * 
 * @author deathknight0718@gmail.com
 * @version 1.0.0
 */
public interface Converter<E, T> {

	/**
	 * 实例变流器正向转换。
	 * 
	 * @param source 来源实例。
	 * @return 目标实例。
	 */
	T changePositively(E source);

	/**
	 * 实例变流器逆向转换。
	 * 
	 * @param source 来源实例。
	 * @return 目标实例。
	 */
	E changeNegatively(T source);

}
